Embodiments of the inventive concept described herein relate to a modular controller and operating method thereof, and more particularly, relate to a modular controller in a software-defined networking environment and an operating method thereof.
Software-Defined Networking (SDN) means the technology of managing all network devices by an intelligent central management system. The SDN technology may be more practical in developing and allowing diverse functions than traditional network structure by processing control operations, which are related to packet processes that have been performed through a preexisting network device by itself, through a controller which is provided in the form of software.
An SDN system is generally structured of a controller for controlling the overall network, a plurality of OpenFlow switches for processing packets in control of a controller server, and a host as a lower layer of the OpenFlow switch. In this case, the OpenFlow switch operates simply in charge of transmission/reception transaction, while the controller arranges routes of packets, and manages and controls the packets. Therefore, the basic structure of the SDN system may be simply said as separating a control plane and a data plane which constitute a network device.
In an SDN environment, controllers act for regulating and managing the environmental network conditions while they are provided in open source types, for example, ONOS, PDX, and OpenDayLight. But, because such controllers are basically formed of different architectures and software APIs, it is difficult to use other controllers in a single network.
For example, in the case of using controllers respectively by users in a single network, one of the users may regard performance of the controller as important while another user may regard security as important. As modules related to improvement of security, there have been already published, for example, Role-based authorization, Control flow integrity, and Openflow message verification. However, it could be still difficult for a network operator to adjust the levels of expandability, performance, and security because the controllers are preliminarily provided in a consolidated form. Therefore, if an operator is able to form a controller by combining diverse modules in a network which needs to be reinforced for specific functionality, the operator may maintain the network in harmony with the circumstances thereof.